home *** CD-ROM | disk | FTP | other *** search
Wrap
/* Copyright (c) Microsoft Corporation. All rights reserved. */ var treeRoot; var szMinusTag = '<IMG SRC="img/_minus.gif" ALT="Click to collapse" ALIGN="MIDDLE">'; var szPlusTag = '<IMG SRC="img/_plus.gif" ALT="Click to expand" ALIGN="MIDDLE">'; var szSpacerTag = '<IMG SRC="img/spacer.gif" ALIGN="MIDDLE" HEIGHT=15 WIDTH='; var szOpenNodes = ""; var nzInterval = 0; var nzSetTocSyncInterval = 0; var ozActive; var nzPopUpWidth = 500; var szPopUpText = ""; var nzLastClicked = -1; var nzLocked = -1; var oPopup = 0; var oPopupBody = 0; var szCookieOpenNodes = "helpTreeOpenNodes"; var szCookieActiveTopic = "helpTreeActiveTopic"; var szCookieActiveURL = "helpTreeActiveURL"; function InitTree() { if (nzLocked == 0) return; LockProcess(); treeRoot = oTree; SetOpenNodes(); RenderTree(); SetLinkFocus(); UnlockProcess(); } function getBrowserVersion() { if (glbBrowserCode == 10 && glbVersion > 5) { return 6; } if (( glbBrowserCode == 10 ) && (glbVersion == 5) && (glbSubVersion >= 5) ) { return 5.5; } if (( glbBrowserCode == 10 ) && (glbVersion == 5) && (glbSubVersion >= 0) ) { return 5; } return 4; } function SetSyncToc() { var s = "<A ID='idTocSync' TITLE='Locate current topic in the Table of Contents pane' HREF='' onclick='SynchToc(); return false;'><IMG STYLE='top:6; position: relative; margin: 1;' SRC='../img/synctoc.gif' BORDER='0'>Sync TOC</A>" ; if (parent.main.idSyncToc) { parent.main.idSyncToc.innerHTML = s; } } function SetActiveDocument() { var sActiveDocument = GetCookie(szCookieActiveURL); if(sActiveDocument != "") { var s = parent.main.document.location; if (s) { var strVariable1 = unescape(s); var strVariable2 = unescape(sActiveDocument); strVariable1 = strVariable1.toLowerCase( ); strVariable2 = strVariable2.toLowerCase( ); if (strVariable1 != strVariable2) { parent.main.document.location.replace(sActiveDocument) } } }; } function SetActiveTopic() { var sActiveTopic = GetCookie(szCookieActiveTopic); if(sActiveTopic != "") { nzLastClicked = sActiveTopic; ExpandBranch(nzLastClicked); }; } function SetDefaultOpenTreeNodes() { SetActiveTopic(); SetActiveDocument(); if (GetCookie(szCookieOpenNodes) == "") { if(nzLastClicked > -1) { SetCookie(szCookieOpenNodes + "=" + "<" + nzLastClicked + ">:", sCookieExp); } else { SetCookie(szCookieOpenNodes + "=" + "<0>:", sCookieExp); } } parent.treesrc.document.location="tree.htm"; } function InitPopUp() { if (nIEVer >= 5.5) { oPopup = window.createPopup(); oPopupBody = oPopup.document.body; oPopupBody.innerHTML = "<SPAN ID='idPopText'></SPAN>" } } function SetOpenNodes() { var i, s; szOpenNodes = GetCookie(szCookieOpenNodes); if(szOpenNodes == "") { return; } var openIds = szOpenNodes.split(':'); for(i = 0; i < openIds.length; i++) { if(openIds[i]) { s = openIds[i]; s = Replace(s, "<",""); s = Replace(s, ">",""); Expand(s); } } } function GetTreeNode(t, nID) { var oNode; var i; if (!t) return null; if(nID == t.id) { return t; } else { for(i=0; i < t.children.length; i++) { oNode = GetTreeNode(t.children[i], nID); if(oNode != null) { return oNode; } } } return null; } function PlusMinusClick(nID) { var i; var oNode; var sWhat = ""; var sWith = ""; if (nzLocked == 0) return false; LockProcess(); szOpenNodes = GetCookie(szCookieOpenNodes); oNode = GetTreeNode(treeRoot, nID); oNode.open = (oNode.open == 0 ? 1 : 0); if(oNode.open == 1) { szOpenNodes = szOpenNodes + "<" + oNode.id + ">:"; } else { oNode.open = 0; if (oNode.id == 0) { szOpenNodes = ""; CloseChildNodes(oNode); sWhat = "<" + oNode.id + ">:"; } else { CloseChildNodes(oNode); sWhat = "<" + oNode.id + ">:"; szOpenNodes = Replace(szOpenNodes, sWhat, sWith); } } SetCookie(szCookieOpenNodes + "=" + szOpenNodes, sCookieExp); parent.treesrc.document.location.replace(parent.treesrc.document.location); UnlockProcess(); return false; } function GetChildNodes(oNode, sDepth) { var i = 0; var s = ""; var sWhat = ""; var sWith = ""; sDepth += "--+"; if (oNode.children) { for (i = 0; i < oNode.children.length; i ++) { s += "<LI> (ID=" + oNode.children[i].id + ") <B>" + sDepth + "[isChild=" + oNode.children[i].isChild + "]</B> " + oNode.children[i].name + ""; if (oNode.children[i].isChild == true) { s += GetChildNodes(oNode.children[i], sDepth); } } } return s; } function CloseChildNodes(oNode) { var i = 0; var s = ""; var sStr = szOpenNodes; var sWhat = ""; var sWith = ""; if (oNode.children) { for (i = 0; i < oNode.children.length; i ++) { sWhat = "<" + oNode.children[i].id + ">:"; oNode.children[i].open = 0; szOpenNodes = Replace(szOpenNodes, sWhat, sWith); if (oNode.children[i].isChild == true) { CloseChildNodes(oNode.children[i]); } } } return; } function Replace(sStr, sWhat, sWith) { sStr = sStr.replace(sWhat, sWith); return sStr; } function RenderTree() { parent.treebody.document.open(); WriteTreeHeader(); WriteTreeBody(treeRoot, 0); WriteTreeFooter(); parent.treebody.document.close(); } function WriteTreeHeader() { var s = ""; var sStyle = "position:absolute; top:1; width:1; padding: 0; padding-left: 0; height:10; border-width:1; border-style:solid; border-color:white;"; s += "<HTML><HEAD>"; s += "<STYLE> .clicked {background-color:navy; " + sStyle + " border-color:black; color:white;} .normal {background-color:white;" + sStyle + " } td {font-size: 8pt; font-family: Verdana, Arial, Helvetica, Sans Serif; padding:0; padding-left: 4pt; padding-bottom: 1pt; margin:0; position:relative;} a {text-decoration:none; cursor:hand;} a:link, a:visited, a:active, a:hover {color: black;} img {border-width:0;} </STYLE>"; s += "</HEAD><BODY BGCOLOR=#ffffff TOPMARGIN=2 LEFTMARGIN=0 onmouseover='parent.HidePopUp()'>"; s += "<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0 LastClicked='-1' id=idTreeTable>\n"; parent.treebody.document.write(s); } function WriteTreeFooter() { var s = ""; s += "<TR><TD><NOBR><DIV ID='idDynamicLength' STYLE='width:60; height:10; overflow:scroll; visibility:hidden; position:relative;'></DIV></NOBR></TD></TR>"; s += "</TABLE>"; s += "</BODY>"; s += "</HTML>"; parent.treebody.document.write(s); } function WriteTreeBody(oNode, iDepth) { var i, j; var sValue = ""; var sClass = ""; var bDblClick = ""; var nWidth = 0; var bFileNode = ""; var sDoubleClickCall = ""; nzLastClicked == oNode.id ? sClass = "clicked" : sClass = "normal" ; bDblClick = (oNode.children.length > 0 && oNode.open == 0) ? true: false; bFileNode = (oNode.children.length == 0) ? true : false; nWidth = (iDepth * 15); if (bFileNode == true) nWidth = nWidth + 15; sValue += "<TR><TD><NOBR>"; sValue += szSpacerTag + nWidth + ">" ; if(oNode.children.length > 0) { sValue += "<A HREF='' onclick='return parent.PlusMinusClick(" + oNode.id + ")'>"; if(oNode.open) { sValue += szMinusTag; } else { sValue += szPlusTag; sDoubleClickCall = ' parent.SetLastClicked(' + oNode.id + '); return parent.PlusMinusClick(' + oNode.id + ')'; } sValue += "</A>"; } sValue += "<A TARGET='main' TABINDEX='-1' HREF='" + oNode.href + "' TEXT=\"" + oNode.name + "\" onmouseover='parent.DisplayPopUp(this)' ID=LNK" + oNode.id + " IDX="+ oNode.id + " onclick='parent.HighliteElement(this)' ondblclick='" + sDoubleClickCall + "' DblClick=" + bDblClick + ">"; if(bFileNode == true) { sValue += oNode.imgFTag + "<SPAN TABINDEX=0 CLASS=" + sClass + ">" + oNode.shortname + "</SPAN>"; } else { if(oNode.open) { sValue += oNode.imgOTag + "<SPAN TABINDEX=0 CLASS=" + sClass + ">" + oNode.shortname + "</SPAN>"; } else { sValue += oNode.imgCTag + "<SPAN TABINDEX=0 CLASS=" + sClass + ">" + oNode.shortname+ "</SPAN>"; } } sValue += "</A>"; sValue += "</NOBR></TD></TR>\n"; parent.treebody.document.write(sValue); if(oNode.open) { for(i=0; i < oNode.children.length; i++) { WriteTreeBody(oNode.children[i], iDepth+1); } } } function HighliteElement(oObj) { if (nzLocked == 0) return; if (nIEVer < nOK) return; LockProcess(); var oLast = eval("parent.treebody.document.all.LNK" + nzLastClicked); if (oLast) { oLast.childNodes[1].className = "normal"; } oObj.childNodes[1].className = "clicked"; SetLastClicked(oObj.IDX); UnlockProcess(); } function SetLinkFocus() { if (nIEVer < nOK) return; if (nzLastClicked < 0) return; var oObj = eval("parent.treebody.document.all.LNK" + nzLastClicked); if (oObj){ while (oObj.tagName != "TD") { oObj = oObj.parentElement; } oObj.focus(); } } function Expand(nIndex) { var oNode; ExpandNode(nIndex); oNode = GetTreeNode(treeRoot, nIndex); if(!oNode) return null; while (oNode.id > -1) { ExpandNode(oNode.id); oNode = oNode.parent; } } function ExpandBranch(nIndex) { if (nIndex < 0) return; var oNode; SetLastClicked(nIndex); oNode = ExpandNode(nIndex); if (!oNode) return null; while (oNode.id > -1) { ExpandNode(oNode.id); oNode = oNode.parent; } parent.treesrc.document.location.replace(parent.treesrc.document.location); } function ExpandNode(nIndex) { var i; var oNode; oNode = GetTreeNode(treeRoot, nIndex); if (!oNode) return null; (oNode.children.length > 0) ? oNode.open = 1 : oNode.open = 0; if(oNode.open == 1) { if (IsClosedNode(oNode.id) == true) { szOpenNodes = szOpenNodes + "<" + oNode.id + ">:"; SetCookie(szCookieOpenNodes + "=" + szOpenNodes, sCookieExp); } } return oNode; } function IsClosedNode(n) { var i; var s; if(!szOpenNodes) { return true; } else { if (szOpenNodes.indexOf(n) < 0) {return true;}else{return false;} } } function DisplayPopUp(oObj) { if (parent.oPopup == 0) return; clearTimeout(nzInterval); HidePopUp(); var bResize; var sShortName = oObj.innerText; var sLongName = oObj.TEXT; ozActive = oObj; sShortName.indexOf(" ...") > -1 ? bResize = false : bResize = true ; SetPopUpText(sLongName, oObj); SetPopUpWidth(sLongName, bResize, oObj); nzInterval = setTimeout("parent.oPopup.show(23, 1, parent.nzPopUpWidth, 15, parent.ozActive)", 100); } function HidePopUp() { if (parent.oPopup == 0) return; parent.oPopup.hide(); } function SetPopUpText(sStr, oObj) { if (parent.oPopup == 0) return; parent.idTreeBody.idDynamicLength.innerHTML = sStr; var id = oObj.IDX; var sDoubleClickCall = ""; var sStyle = "font-size: 8pt; font-family: Verdana, Arial, Helvetica, Sans Serif; padding:0; padding-left: 0; margin-top: 0; margin-left: 0; width: 100%; border-width: 1; border-style:solid; background-color:#ffffff; cursor:hand;"; if (oObj.DblClick == "true") {sDoubleClickCall = "parent.SetLastClicked(" + id + "); parent.PlusMinusClick(\"" + id + "\"); parent.HidePopUp(); return false;" }; szPopUpText = "<SPAN onmouseout='parent.HidePopUp() ; ' onclick='parent.ozActive.click();' ondblclick='" + sDoubleClickCall + " ; ' STYLE='" + sStyle + "'><NOBR>" + sStr + "</NOBR></SPAN>"; parent.oPopupBody.innerHTML = szPopUpText; return szPopUpText; } function SetPopUpWidth(sStr, bResize, oObj) { if (parent.oPopup == 0) return; nzPopUpWidth = parent.idTreeBody.idDynamicLength.scrollWidth + 3; return nzPopUpWidth; } function LockProcess() { nzLocked = 0; } function UnlockProcess() { nzLocked = 1; } function SetLastClicked(nIndex) { nzLastClicked = nIndex; SaveLastOpenedDocument(); } function SaveLastOpenedDocument() { SetCookie(szCookieActiveTopic + "=" + nzLastClicked, sCookieExp); var oLast = eval("parent.treebody.document.all.LNK" + nzLastClicked); if(oLast) { SetCookie(szCookieActiveURL + "=" + oLast.href, sCookieExp); } }